package com.ht.module.sys.service;

import com.ht.module.sys.dto.LoginDto;
import com.ht.module.sys.entity.SysUser;
import com.ht.module.sys.vo.LoginVo;

import javax.servlet.http.HttpServletRequest;

/**
 * <p>
 * 部门表 服务类
 * </p>
 *
 * @author hejialun
 * @since 2022-04-18
 */
public interface LoginService {

    LoginVo login(LoginDto en);


    /**
     * @param userNumber ：用户名称
     * @return com.zwzc.module.login.vo.LoginVo
     * @Description: TODO(通过用户名生成token)
     * @date 2023/8/29 11:29
     * @author hejialun
     **/
    LoginVo generateToken(String userNumber);


    /**
     * @param sysUser:用户数据，来源getUserInfoByLoginNameAll这个接口，包含权限，菜单等数据
     * @return com.zwzc.module.login.vo.LoginVo
     * @Description: TODO(通过用户数据生成token)
     * @date 2023/8/29 11:30
     * @author hejialun
     **/
    LoginVo generateToken(SysUser sysUser);

    /**
     * 退出登录
     * @param request
     */
    void lougout(HttpServletRequest request);
}
